package com.fowo.api.model.warehouse;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import javax.validation.constraints.*;
import lombok.Data;

/**
 * 仓库 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Data
public class WarehouseImportPo {

  /** 仓库名称 */
  @ExcelProperty("*仓库名称")
  @NotBlank(message = "仓库名称不能为空")
  @Size(max = 50, message = "仓库名称长度不能超过50")
  private String name;

  /** 仓库属性 */
  @ExcelProperty("仓库属性")
  private String type;

  /** 仓库类型 */
  @ExcelProperty("仓库类型")
  private String isOwn;

  /** 仓库编码 */
  @ExcelProperty("*仓库编码")
  @NotBlank(message = "仓库编码不能为空")
  @Size(max = 50, message = "仓库编码长度不能超过50")
  private String wid;

  /** 供应商 */
  @ExcelProperty("供应商")
  @Size(max = 50, message = "供应商长度不能超过50")
  private String supplierIdSupplierName;

  /** 负责人 */
  @ExcelProperty("负责人")
  @Size(max = 50, message = "负责人长度不能超过50")
  private String contact;

  /** 联系电话 */
  @ExcelProperty("联系电话")
  @Size(max = 50, message = "联系电话长度不能超过50")
  private String telephone;

  /** 仓库地址 */
  @ExcelProperty("仓库地址")
  @Size(max = 50, message = "仓库地址长度不能超过50")
  private String address;

  /** 备注 */
  @ExcelProperty("备注")
  @Size(max = 50, message = "备注长度不能超过50")
  private String remark;

  /** 仓库类型 */
  @ExcelProperty("*仓库类型")
  @NotBlank(message = "仓库类型不能为空")
  private String widType;

  /** 待检待上架量 */
  @ExcelProperty("待检待上架量")
  @IntegerString(message = "待检待上架量数值格式不正确", label = "待检待上架量")
  private String quantityTest;

  /** 待到货量 */
  @ExcelProperty("待到货量")
  @IntegerString(message = "待到货量数值格式不正确", label = "待到货量")
  private String quantityAog;

  /** 预计总量 */
  @ExcelProperty("预计总量")
  @IntegerString(message = "预计总量数值格式不正确", label = "预计总量")
  private String estimatedTotal;

  /** 总量 */
  @ExcelProperty("总量")
  @IntegerString(message = "总量数值格式不正确", label = "总量")
  private String gross;

  /** 费用 */
  @ExcelProperty("费用")
  @IntegerString(message = "费用数值格式不正确", label = "费用")
  private String cost;

  /** 头程 */
  @ExcelProperty("头程")
  @IntegerString(message = "头程数值格式不正确", label = "头程")
  private String theFirstVessel;

  /** 库存成本 */
  @ExcelProperty("库存成本")
  @IntegerString(message = "库存成本数值格式不正确", label = "库存成本")
  private String stockHoldingCost;

  /** 总计 */
  @ExcelProperty("总计")
  @IntegerString(message = "总计数值格式不正确", label = "总计")
  private String total;
}
